Skip to main content

Week 1

February 06

CCTV

  • The weighted loss function and resnet 156 did not improve model's performance
  • The newly uploaded CCTV videos by Sean followed WRC standards (UK standard)
  • The WRC manual can be purchased online.

FME

  • Need to find a way to use Arcpy without using ArcGIS pro

Feb 07

  • UBC can provide up to 3000 USD Azure credit. However, they won't be able to grant those credits until either the week of February 20th or the start of March because they are currently undergoing changes to Azure Education Hub and Paid Azure subscription processes.

  • To do

    • document what I did setting the two videos aside in pure english (both in notebook and people GQC)
    • how different type of video we will go to different pipe line in data flow
    • include water level model in my thesis.
    • train and predict the video type.
    • compare 1000 images on Easy OCR vs Azure
    • pixel flipping for azure (only work for type 1 annotation style (text bounded in black box))
    • asking Sean if he could provide access database.
    • create map showing which video corresponding to shape file (videoname and sewer main name).
      • done for mains corresponding to videos uploaded in 2022
      • done for mains corresponding to videos uploaded in 2023
      • link to note on matching mains to SanMain shape file
      • so that we can link to the environment. correlation between environment and the defects found in the sewer main.

Feb 08

  • make a run of Resnet152 with weighted loss
  • drop the runs that we did with pretrain=false and fine_tune from our reporting.
  • do pretrain=false with other four fit option
    • fit
    • fit_one_cyle
    • fit_flat_cos
    • fit_sgdr

Feb 09

  • look into nested cross validation
  • get a distribution of the combinations of labels.
  • Use sklearn StratifiedKFold to produce 10 set of datasets for training and validation.
    • azure_continuous_train_v2.csv is derived from azure_continuous_33_39_videos.csv with additional some images from SANM00304_1 and excluding all images from SANMN01139_9 label csv.
      • images from SANM00304_1 with the following combination of labels are included the the continuous_train_v2.csv:
        • 'TB IDC ISC SRI'
        • 'SAP SRI ISJ'
        • 'ISC TFA SRI ISJ'
        • 'CL SRI ISJ'
        • 'TF SAP SRI ISJ'
    • azure_continuous_test_v2.csv contains all images from SANMN01139_9 label csv and the rest of images from SANM00304_1 that were not in the continuous_train_v2.csv.
    • azure_continuous_xxx_num_each_comb_labels_gt_9.csv refers to azure_continuous_xxx_v2.csv that does not contain images of the combination of labels that lesser than 10 images.
    • azure_continuous_xxx_v2_manually_edit.csv refers to azure_continuous_xxx_v2.csv with additional images of images that have combination of labels less than 10 images.
      • The additional images either be the duplicated image of the existing image in the csv file or manually adding the images that previously dropped because they do not have high spatial correlation with the selected image.
      • Also 'ISC TFA SRI ISJ' was changed to 'SAP ISC TFA SRI ISJ' because 'SAP' can be seen in the image.
      • We have to edit the image labeling process.
    • continuous_xxx_v2_comb_labels_gt_9_i.csv and continuous_xxx_v2_manually_edit_i.csv are csv files created from sklearn StratifiedKFold from azure_continuous_xxx_num_each_comb_labels_gt_9.csv and azure_continuous_xxx_v2_manually_edit.csv, respectively.
    • xxx represents data type (i.e., train, test, val, or train_val).
    • i represents the number from 0 to 9.
    • continuous_xxx_v2_manually_edit_i.csv is renamed as continuous_xxx_v2_i.csv
  • Prepare dataset
    • We have 43536 images with labels from 73 videos (including Clement Ave video).
    • We created 2 set of data:
      • 95% training data and 5% test data split
      • 90% training data and 10% test data split
      • from skmultilearn.model_selection import iterative_train_test_split (a special library for multilabel stratified splitting was used to do the split.
    • The training data was then further split to training and validation datasets using from iterstrat.ml_stratifiers import MultilabelStratifiedKFold
      • There are three functions that we can use.
        • MultilabelStratifiedKFold no repeated index in test dataset (validation) between fold
        • RepeatedMultilabelStratifiedKFold can have repeated index in train or test between fold and have the same set of index switching between train and test dataset.
        • MultilabelStratifiedShuffleSplit random set of index no same of set of index switching between train and test dataset.
  • for thesis, try applying on different dataset. (look into facility optimization to find the best test dataset)